查看原文
其他

Android mHealth应用程序中GDPR违规行为的实证评估

CJRTnT 安全学术圈 2022-08-28

原文作者:Ming Fan, Le Yu, Sen Chen, Hao Zhou, Xiapu Luo, Shuyue Li, Yang Liu, Jun Liu, Ting Liu
原文标题:An Empirical Evaluation of GDPR Compliance Violations in Android mHealth Apps
原文链接:https://ieeexplore.ieee.org/document/9251060
原文来源:2020 IEEE 31st International Symposium on Software Reliability Engineering (ISSRE)
笔记作者:CJRTnT@SecQuan
文章小编:bight@SecQuan

摘要

GDPR(通用数据保护条例)的目的是提供更好的隐私保护,但其仅列出了一般规则,而未明确指明关于如何开发满足要求的应用程序的详细步骤。

本论文提出了自动化系统HPDROID,用于识别应用隐私政策中声明的隐私数据的相关操作代码中的隐私数据相关行为,并以此检测三种GDPR违规行为,包括隐私策略的不完整性数据收集的不一致性数据传输的不安全性

本论文以mHealth Apps(医疗保健应用)为切入点进行研究,这些apps通常会收集大量的PHI,其中PHI代表health-related information

提出的方法

图1

A. 检测不完整的隐私政策-Detecting Incomplete Privacy Policy
  1. 针对隐私政策文本进行处理——将文本内容利用STANFORD TYPED DEPENDENCY PARSER拆分为一组句子;然后每个句子都通过词袋模型进行格式化;最后,句子便被表示为特征向量。

  2. 利用机器学习的方法进行分类——人工手动标注并将句子分为六类,如图2所示;然后为每种类型(使用随机森林等方法)训练出一种分类器,例如,为了构造用于预测'Data Collection'的分类器,将其385个句子视为正样本,并从其他标记的句子中随机选择大小相同的作为负样本。

    图2

  3. 检测不完整的隐私政策——将隐私政策文本中各句子分别进行以上六种分类,以此来检测隐私政策的完整性。

B. 分析不一致行为-Analyzing Inconsistent Behavior

构造两个集合:DCP(declared collected PHI,即隐私政策中声明所要收集的PHI)和ACP(actually collected PHI,实际上收集了的PHI)。

  1. DCP的构建通过短语相似度计算完成——计算PHI的语义从隐私政策中提取的(例如:医生姓名)名词短语(重点关注带有'Data Collection'和'Data Usage'标签的句子)之间的相似性,以将PHI添加到DCP中。

  2. ACP的构建依赖于两种技术:GUI分析数据流分析

    GUI分析:使用APKTOOL进行反汇编,然后将自定义活动注入至APK从而将该活动注册为入口点,接着将APK重组并安装在手机上,运行后,提取UI widgets的关联元数据并以四元组<class, id, text, bound>的形式表示,class代表widget类型,id代表存在public.xml中的widget id,text代表widget中显示的文本,bound代表widget的坐标。接下来则需要理解widget中需要用户输入的语义——这通常有两种方式,基于提示文本的方法基于标签的方法,如图3所示,分别使用不同的算法将其与PHI进行匹配。

    图3

    数据流分析:基于静态分析工具(如FLOWDROID和VULHUNTER)进行数据流分析,并将数据流与其对应的widget对象相对应。

  3. 最后,如果ACP中存在不包含在DCP中的项目,则被判别为是不一致的行为。

C. 识别不安全的数据传输-Identifying Insecure Data Transmission
  1. 加密分析——各种加密方案通常可由应用程序通过调用API doFinal()、digest()而实现。因此,使用加密API调用作为data sinks,并应用数据流分析技术来检测是否存在来自数据源的完整数据流,并评估其是否被正确使用。
  2. SSL分析——SSL是在Android平台上传输数据时保护数据的另一种常用方法,并用于创建sockets和HTTP(S)连接,重点关注通过sink API调用在网络发送的PHI,然后使用MALLODROID(一种静态分析工具)来识别SSL滥用。

结果

图4、图5分别展示了有标签、无标签的模型分类结果,RF-随机森林,DT-决策树,NB-朴素贝叶斯:

图4

图5

如图5(a)所示,607(76.3%)项隐私政策涵盖所有类别,其余189(23.7%)项隐私政策不完整,其中34项隐私政策涵盖的类别不超过三个。

使用log、file、network、SMS、数据库和content分别表示不同的数据存储方法,图6列出了收集到的PHI的频率分布。59个应用程序共有160个PHI收集行为,其中姓名、电子邮件和密码是最常见的。在六种数据存储方法中,log是最常用的方法,因为55%的收集到的PHI被写入日志,SMS是使用最少的方法,因为只有一种通过发送消息收集电话号码的行为。

安全学术圈招募队友-ing, 有兴趣加入学术圈的请联系secdr#qq.com


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存